gdk_gc_set_clip_region (tmp_gc, NULL);
}
-static void
-append_move_region (GdkWindowObject *impl_window,
- GdkRegion *region,
- int dx, int dy)
+static GdkWindowRegionMove *
+gdk_window_region_move_new (GdkRegion *region,
+ int dx, int dy)
{
GdkWindowRegionMove *move;
move->dx = dx;
move->dy = dy;
+ return move;
+}
+
+static void
+gdk_window_region_move_free (GdkWindowRegionMove *move)
+{
+ gdk_region_destroy (move->dest_region);
+ g_slice_free (GdkWindowRegionMove, move);
+}
+
+static void
+append_move_region (GdkWindowObject *impl_window,
+ GdkRegion *region,
+ int dx, int dy)
+{
+ GdkWindowRegionMove *move;
+
+ move = gdk_window_region_move_new (region, dx, dy);
+
impl_window->outstanding_moves =
g_list_append (impl_window->outstanding_moves, move);
}
do_move_region_bits_on_impl (impl_window,
move->dest_region, move->dx, move->dy);
- gdk_region_destroy (move->dest_region);
- g_slice_free (GdkWindowRegionMove, move);
+ gdk_window_region_move_free (move);
}
g_list_free (impl_window->outstanding_moves);